The present disclosure relates generally to information handling systems, and more particularly to a managed boot process system for information handling systems.
As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to users is information handling systems. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
Most information handling systems such as, for example, switches, include a series of steps that are performed to boot up that initialize the system and load a firmware image that allows the switch to operate. Such conventional booting systems suffer from a number of problems. For example, conventional boot loader images require dedicated drivers and operating system (OS) extensions to be created and maintained. Furthermore, operations performed during the boot process may be exposed to the user without providing any user-friendly means for interacting with the boot process, and low-level boot loader arguments may be exposed to the user that are typically cryptic or unintelligible. In some situations, boot loader arguments and/or images may become corrupted or inconsistent such that boot up fails or results in errors, and the procedures for loading new code are very primitive and result in the use of file transfer protocols to provide new images on the switch, which can result in unbootable switches if a problem occurs. Finally, when a switch reboots during a remote management session, that reboot can take a relatively long time, and the remote management session requires a reauthorization by the management system to continue.
Accordingly, it would be desirable to provide a boot system that provides a user the ability to interact with the system early in the boot process rather than when (and if) that boot process is successful.